import cv2
import numpy as np
import matplotlib.pyplot as plt

gray = cv2.imread("img/scene.png", 0)

# clipLimit	对比度限制的阈值。
# tileGridSize	用于直方图均衡的网格大小。输入图像将被分割成大小相等的矩形图块。tileGridSize 定义行和列中的瓦片数。
clahe = cv2.createCLAHE(2, (10, 10))
# clahe.apply 将CLAHE配置参数应用于灰度图中
hist = clahe.apply(gray)

plt.imshow(np.hstack((gray, hist)), cmap="gray")
plt.show()
